Some applications that run on legacy host systems can be accessed using a display terminal running a terminal protocol. The terminal protocol may enable communications to and from the display terminal, such as when a screen is transmitted to the display terminal and when user input is transmitted to the host system. Such protocols are sometimes referred to as “2 way asynchronous” communications. In such a terminal protocol, for example, updated (or new) screens generated by the host application may be transmitted to the display terminal without a request from the user. In other words, updated screens may be automatically transmitted to the display terminal.
It is also known to provide access to applications running on legacy host systems over a network, using a server running a terminal emulation program. For example, screens generated by host applications traditionally accessed using a display terminal using a terminal protocol may be reformatted by a server terminal emulation program into markup language. The markup language format may then be provided in response to a request from a web browser application. Thus, the use of a server terminal emulation program enables the legacy host system to be accessed using a browser over, for example, the World Wide Web (WWW), the internet or an intranet, rather than a display terminal over a terminal protocol.
Unfortunately, some of the communications protocols used to provide terminal emulation between browsers and legacy host systems may not provide the same communications functions provided by the terminal protocols described above. For example, the Hypertext Transport Protocol (HTTP) utilizes a synchronous “request-response communications model.” In HTTP, the server typically only provided information to the browser in response to a request from the browser. In such a system, it may be difficult to provide the asynchronous communications described above. In particular, it may be difficult to provide updated screens to the browser automatically.
Some systems may allow a user to provide manual requests for updated screens to the legacy host system which may cause the server to provide an updated screen generated by the legacy host system. For example, a refresh button may be provided wherein the user may request an updated screen from the legacy host system. In addition to requiring user intervention, this type of solution to the synchronous communications problem may not provide an updated host screen because the refresh request may occur prior to the generation of an updated screen. Accordingly, there is a need for methods, systems, and computer program products that allow improved communication with legacy host applications over the WWW.